import './index.scss';
import tpl from './index.tpl';

//引入数据模型 Detail
import {
	DetailModel
} from '../../../models/detail';

//导入组件模块 toast
import Toast from '../../toast';


//实例化模型
const detailModel = new DetailModel();
//实例化组件模块
const toast = new Toast();


export default () => {
	return {
		name: 'btnBox',
		tpl,
		//绑定事件处理函数
		bindEvent() {
			const oAddToCartBtn = document.getElementsByClassName('J_addToCart')[0];
			//绑定单击事件
			oAddToCartBtn.addEventListener('click', this.updateShoppingCart, false);
		},
		//单击事件处理函数
		//实现点击 加入购物车 弹出添加成功/已达上线/添加失败
		updateShoppingCart(e) {
			//约等于e.target.getAttribute('id')
			const gid = e.target.dataset.id;
			//then()拿到模型层里resolve()抛出的code数据
			detailModel.updateShoppingCart(gid).then((code) => {
				switch (code) {
					case '1001':
						//不存在，返回首页
						window.location.href = 'index.html';
						break;
					case '1002':
						toast.showToast({
							icon: 'warning',
							title: '添加失败',
							duration: 1500
						});
						break;
					case '1003':
						toast.showToast({
							icon: 'warning',
							title: '已达上限',
							duration: 1500
						});
						break;
					case '200':
						toast.showToast({
							title: '添加成功',
							duration: 1500
						});
						break;
					default:
						break;
				}
			})
		}
	}
}